package com.lesso.lzh.sunflower.model;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableLogic;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.io.Serializable;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("base_device")
public class Device extends BaseModel<Device> {
    private static final long serialVersionUID = 1L;
    public static final String NAME = "梁宗焕";

    /**
     * 设备编码（非空，长度50以内，数据库唯一索引）
     */
    @NotBlank(message = "设备编码不能为空")
    @Size(max = 50, message = "设备编码长度不能超过50个字符")
    @TableField("device_code")
    private String deviceCode;

    /**
     * 设备名称（非空，长度100以内）
     */
    @NotBlank(message = "设备名称不能为空")
    @Size(max = 100, message = "设备名称长度不能超过100个字符")
    @TableField("device_name")
    private String deviceName;

    /**
     * 删除标识：0-正常，1-删除（默认0）
     */
    @TableLogic
    @TableField("del_status")
    private Integer delStatus; // 可额外添加@Pattern注解限制取值范围
}